home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1992 June: ROMin Holiday / ADC Developer CD (1992-06) (''ROMin Holiday'')_iso / Developer Connection - 06-1992.iso / Developer Essentials / MPW Interfaces & Libraries / PInterfaces / Files.p < prev    next >
Encoding:
Text File  |  1992-01-29  |  37.2 KB  |  1,046 lines  |  [TEXT/MPS ]

  1.  
  2. {
  3. Created: Sunday, September 15, 1991 at 10:42 PM
  4.  Files.p
  5.  Pascal Interface to the Macintosh Libraries
  6.  
  7.   Copyright Apple Computer, Inc. 1985-1991
  8.   All rights reserved
  9. }
  10.  
  11.  
  12. {$IFC UNDEFINED UsingIncludes}
  13. {$SETC UsingIncludes := 0}
  14. {$ENDC}
  15.  
  16. {$IFC NOT UsingIncludes}
  17.  UNIT Files;
  18.  INTERFACE
  19. {$ENDC}
  20.  
  21. {$IFC UNDEFINED UsingFiles}
  22. {$SETC UsingFiles := 1}
  23.  
  24. {$I+}
  25. {$SETC FilesIncludes := UsingIncludes}
  26. {$SETC UsingIncludes := 1}
  27. {$IFC UNDEFINED UsingTypes}
  28. {$I $$Shell(PInterfaces)Types.p}
  29. {$ENDC}
  30. {$IFC UNDEFINED UsingOSUtils}
  31. {$I $$Shell(PInterfaces)OSUtils.p}
  32. {$ENDC}
  33. {$IFC UNDEFINED UsingSegLoad}
  34. {$I $$Shell(PInterfaces)SegLoad.p}
  35. {$ENDC}
  36. {$SETC UsingIncludes := FilesIncludes}
  37.  
  38. CONST
  39.  
  40. { Finder Constants }
  41. fsAtMark = 0;
  42. fOnDesk = 1;
  43. fsCurPerm = 0;
  44. fHasBundle = 8192;
  45. fsRdPerm = 1;
  46. fInvisible = 16384;
  47. fTrash = -3;
  48. fsWrPerm = 2;
  49. fDesktop = -2;
  50. fsRdWrPerm = 3;
  51. fDisk = 0;
  52. fsRdWrShPerm = 4;
  53. fsFromStart = 1;
  54. fsFromLEOF = 2;
  55. fsFromMark = 3;
  56. rdVerify = 64;
  57. ioDirFlg = 3;                                { see IM IV-125 }
  58. ioDirMask = $10;
  59. fsRtParID = 1;
  60. fsRtDirID = 2;
  61.  
  62. { CatSearch SearchBits Constants }
  63. fsSBPartialName = 1;
  64. fsSBFullName = 2;
  65. fsSBFlAttrib = 4;
  66. fsSBFlFndrInfo = 8;
  67. fsSBFlLgLen = 32;
  68. fsSBFlPyLen = 64;
  69. fsSBFlRLgLen = 128;
  70. fsSBFlRPyLen = 256;
  71. fsSBFlCrDat = 512;
  72. fsSBFlMdDat = 1024;
  73. fsSBFlBkDat = 2048;
  74. fsSBFlXFndrInfo = 4096;
  75. fsSBFlParID = 8192;
  76. fsSBNegate = 16384;
  77. fsSBDrUsrWds = 8;
  78. fsSBDrNmFls = 16;
  79. fsSBDrCrDat = 512;
  80. fsSBDrMdDat = 1024;
  81. fsSBDrBkDat = 2048;
  82. fsSBDrFndrInfo = 4096;
  83. fsSBDrParID = 8192;
  84.  
  85. { vMAttrib (GetVolParms) bit position constants }
  86. bLimitFCBs = 31;
  87. bLocalWList = 30;
  88. bNoMiniFndr = 29;
  89. bNoVNEdit = 28;
  90. bNoLclSync = 27;
  91. bTrshOffLine = 26;
  92. bNoSwitchTo = 25;
  93. bNoDeskItems = 20;
  94. bNoBootBlks = 19;
  95. bAccessCntl = 18;
  96. bNoSysDir = 17;
  97. bHasExtFSVol = 16;
  98. bHasOpenDeny = 15;
  99. bHasCopyFile = 14;
  100. bHasMoveRename = 13;
  101. bHasDesktopMgr = 12;
  102. bHasShortName = 11;
  103. bHasFolderLock = 10;
  104. bHasPersonalAccessPrivileges = 9;
  105. bHasUserGroupList = 8;
  106. bHasCatSearch = 7;
  107. bHasFileIDs = 6;
  108. bHasBTreeMgr = 5;
  109. bHasBlankAccessPrivileges = 4;
  110.  
  111. { Desktop Database icon Constants }
  112. kLargeIcon = 1;
  113. kLarge4BitIcon = 2;
  114. kLarge8BitIcon = 3;
  115. kSmallIcon = 4;
  116. kSmall4BitIcon = 5;
  117. kSmall8BitIcon = 6;
  118.  
  119. kLargeIconSize = 256;
  120. kLarge4BitIconSize = 512;
  121. kLarge8BitIconSize = 1024;
  122. kSmallIconSize = 64;
  123. kSmall4BitIconSize = 128;
  124. kSmall8BitIconSize = 256;
  125.  
  126. { Foreign Privilege Model Identifiers }
  127. fsUnixPriv = 1;
  128.  
  129. { Version Release Stage Codes }
  130. developStage = $20;
  131. alphaStage = $40;
  132. betaStage = $60;
  133. finalStage = $80;
  134.  
  135. { Authentication Constants }
  136. kNoUserAuthentication = 1;
  137. kPassword = 2;
  138. kEncryptPassword = 3;
  139. kTwoWayEncryptPassword = 6;
  140.  
  141. TYPE
  142. CInfoType = (hFileInfo,dirInfo);
  143.  
  144.  
  145. FXInfo = RECORD
  146.  fdIconID: INTEGER;                            {Icon ID}
  147.  fdUnused: ARRAY [1..3] OF INTEGER;            {unused but reserved 6 bytes}
  148.  fdScript: SignedByte;                        {Script flag and number}
  149.  fdXFlags: SignedByte;                        {More flag bits}
  150.  fdComment: INTEGER;                        {Comment ID}
  151.  fdPutAway: LONGINT;                        {Home Dir ID}
  152.  END;
  153.  
  154. DInfo = RECORD
  155.  frRect: Rect;                                {folder rect}
  156.  frFlags: INTEGER;                            {Flags}
  157.  frLocation: Point;                            {folder location}
  158.  frView: INTEGER;                            {folder view}
  159.  END;
  160.  
  161. DXInfo = RECORD
  162.  frScroll: Point;                            {scroll position}
  163.  frOpenChain: LONGINT;                        {DirID chain of open folders}
  164.  frScript: SignedByte;                        {Script flag and number}
  165.  frXFlags: SignedByte;                        {More flag bits}
  166.  frComment: INTEGER;                        {comment}
  167.  frPutAway: LONGINT;                        {DirID}
  168.  END;
  169.  
  170. GetVolParmsInfoBuffer = RECORD
  171.  vMVersion: INTEGER;                        {version number}
  172.  vMAttrib: LONGINT;                            {bit vector of attributes (see vMAttrib constants)}
  173.  vMLocalHand: Handle;                        {handle to private data}
  174.  vMServerAdr: LONGINT;                        {AppleTalk server address or zero}
  175.  vMVolumeGrade: LONGINT;                    {approx. speed rating or zero if unrated}
  176.  vMForeignPrivID: INTEGER;                    {foreign privilege model supported or zero if none}
  177.  END;
  178.  
  179. CInfoPBPtr = ^CInfoPBRec;
  180. CInfoPBRec = RECORD
  181.  qLink: QElemPtr;
  182.  qType: INTEGER;
  183.  ioTrap: INTEGER;
  184.  ioCmdAddr: Ptr;
  185.  ioCompletion: ProcPtr;
  186.  ioResult: OSErr;
  187.  ioNamePtr: StringPtr;
  188.  ioVRefNum: INTEGER;
  189.  ioFRefNum: INTEGER;
  190.  ioFVersNum: SignedByte;
  191.  filler1: SignedByte;
  192.  ioFDirIndex: INTEGER;
  193.  ioFlAttrib: SignedByte;
  194.  filler2: SignedByte;
  195.  CASE CInfoType OF
  196.    hFileInfo:
  197.   (ioFlFndrInfo: FInfo;
  198.   ioDirID: LONGINT;
  199.   ioFlStBlk: INTEGER;
  200.   ioFlLgLen: LONGINT;
  201.   ioFlPyLen: LONGINT;
  202.   ioFlRStBlk: INTEGER;
  203.   ioFlRLgLen: LONGINT;
  204.   ioFlRPyLen: LONGINT;
  205.   ioFlCrDat: LONGINT;
  206.   ioFlMdDat: LONGINT;
  207.   ioFlBkDat: LONGINT;
  208.   ioFlXFndrInfo: FXInfo;
  209.   ioFlParID: LONGINT;
  210.   ioFlClpSiz: LONGINT);
  211.    dirInfo:
  212.   (ioDrUsrWds: DInfo;
  213.   ioDrDirID: LONGINT;
  214.   ioDrNmFls: INTEGER;
  215.   filler3: ARRAY [1..9] OF INTEGER;
  216.   ioDrCrDat: LONGINT;
  217.   ioDrMdDat: LONGINT;
  218.   ioDrBkDat: LONGINT;
  219.   ioDrFndrInfo: DXInfo;
  220.   ioDrParID: LONGINT);
  221.  END;
  222.  
  223. { Catalog position record }
  224. CatPositionRec = RECORD
  225.  initialize: LONGINT;
  226.  priv: ARRAY [1..6] OF INTEGER;
  227.  END;
  228.  
  229. FSSpecPtr = ^FSSpec;
  230. FSSpecHandle = ^FSSpecPtr;
  231. FSSpec = RECORD
  232.  vRefNum: INTEGER;
  233.  parID: LONGINT;
  234.  name: Str63;
  235.  END;
  236.  
  237. FSSpecArrayPtr = ^FSSpecArray;
  238. FSSpecArrayHandle = ^FSSpecArrayPtr;
  239.  
  240. FSSpecArray = ARRAY [0..0] OF FSSpec;
  241.  
  242.  
  243. { The following are structures to be filled out with the _GetVolMountInfo call
  244.  and passed back into the _VolumeMount call for external file system mounts. }
  245.  
  246. VolumeType = OSType;                        { the "signature" of the file system }
  247.  
  248. CONST
  249. AppleShareMediaType = 'afpm';                { the signature for AppleShare }
  250.  
  251. TYPE
  252. VolMountInfoPtr = ^VolMountInfoHeader;
  253. VolMountInfoHeader = RECORD
  254.  length: INTEGER;                            { length of location data (including self) }
  255.  media: VolumeType;                            { type of media.  Variable length data follows }
  256.  END;
  257.  
  258. AFPVolMountInfoPtr = ^AFPVolMountInfo;
  259. AFPVolMountInfo = RECORD
  260.  length: INTEGER;                            { length of location data (including self) }
  261.  media: VolumeType;                            { type of media }
  262.  flags: INTEGER;                            { bits for no messages, no reconnect }
  263.  nbpInterval: SignedByte;                    { NBP Interval parameter (IM2, p.322) }
  264.  nbpCount: SignedByte;                        { NBP Interval parameter (IM2, p.322) }
  265.  uamType: INTEGER;                            { User Authentication Method }
  266.  zoneNameOffset: INTEGER;                    { short positive offset from start of struct to Zone Name }
  267.  serverNameOffset: INTEGER;                    { offset to pascal Server Name string }
  268.  volNameOffset: INTEGER;                    { offset to pascal Volume Name string }
  269.  userNameOffset: INTEGER;                    { offset to pascal User Name string }
  270.  userPasswordOffset: INTEGER;                { offset to pascal User Password string }
  271.  volPasswordOffset: INTEGER;                { offset to pascal Volume Password string }
  272.  AFPData: PACKED ARRAY [1..144] OF CHAR;    { variable length data may follow }
  273.  END;
  274.  
  275. DTPBPtr = ^DTPBRec;
  276. DTPBRec = RECORD
  277.  qLink: QElemPtr;
  278.  qType: INTEGER;
  279.  ioTrap: INTEGER;
  280.  ioCmdAddr: Ptr;
  281.  ioCompletion: ProcPtr;
  282.  ioResult: OSErr;
  283.  ioNamePtr: StringPtr;
  284.  ioVRefNum: INTEGER;
  285.  ioDTRefNum: INTEGER;
  286.  ioIndex: INTEGER;
  287.  ioTagInfo: LONGINT;
  288.  ioDTBuffer: Ptr;
  289.  ioDTReqCount: LONGINT;
  290.  ioDTActCount: LONGINT;
  291.  filler1: SignedByte;
  292.  ioIconType: SignedByte;
  293.  filler2: INTEGER;
  294.  ioDirID: LONGINT;
  295.  ioFileCreator: OSType;
  296.  ioFileType: OSType;
  297.  ioFiller3: LONGINT;
  298.  ioDTLgLen: LONGINT;
  299.  ioDTPyLen: LONGINT;
  300.  ioFiller4: ARRAY [1..14] OF INTEGER;
  301.  ioAPPLParID: LONGINT;
  302.  END;
  303.  
  304. HParmBlkPtr = ^HParamBlockRec;
  305. HParamBlockRec = RECORD
  306.  qLink: QElemPtr;
  307.  qType: INTEGER;
  308.  ioTrap: INTEGER;
  309.  ioCmdAddr: Ptr;
  310.  ioCompletion: ProcPtr;
  311.  ioResult: OSErr;
  312.  ioNamePtr: StringPtr;
  313.  ioVRefNum: INTEGER;
  314.  CASE ParamBlkType OF
  315.    IOParam:
  316.   (ioRefNum: INTEGER;
  317.   ioVersNum: SignedByte;
  318.   ioPermssn: SignedByte;
  319.   ioMisc: Ptr;
  320.   ioBuffer: Ptr;
  321.   ioReqCount: LONGINT;                        {size of buffer area}
  322.   ioActCount: LONGINT;                        {length of vol parms data}
  323.   ioPosMode: INTEGER;
  324.   ioPosOffset: LONGINT);
  325.    FileParam:
  326.   (ioFRefNum: INTEGER;
  327.   ioFVersNum: SignedByte;
  328.   filler1: SignedByte;
  329.   ioFDirIndex: INTEGER;
  330.   ioFlAttrib: SignedByte;
  331.   ioFlVersNum: SignedByte;
  332.   ioFlFndrInfo: FInfo;
  333.   ioDirID: LONGINT;
  334.   ioFlStBlk: INTEGER;
  335.   ioFlLgLen: LONGINT;
  336.   ioFlPyLen: LONGINT;
  337.   ioFlRStBlk: INTEGER;
  338.   ioFlRLgLen: LONGINT;
  339.   ioFlRPyLen: LONGINT;
  340.   ioFlCrDat: LONGINT;
  341.   ioFlMdDat: LONGINT);
  342.    VolumeParam:
  343.   (filler2: LONGINT;
  344.   ioVolIndex: INTEGER;
  345.   ioVCrDate: LONGINT;
  346.   ioVLsMod: LONGINT;
  347.   ioVAtrb: INTEGER;
  348.   ioVNmFls: INTEGER;
  349.   ioVBitMap: INTEGER;
  350.   ioAllocPtr: INTEGER;
  351.   ioVNmAlBlks: INTEGER;
  352.   ioVAlBlkSiz: LONGINT;
  353.   ioVClpSiz: LONGINT;
  354.   ioAlBlSt: INTEGER;
  355.   ioVNxtCNID: LONGINT;
  356.   ioVFrBlk: INTEGER;
  357.   ioVSigWord: INTEGER;
  358.   ioVDrvInfo: INTEGER;
  359.   ioVDRefNum: INTEGER;
  360.   ioVFSID: INTEGER;
  361.   ioVBkUp: LONGINT;
  362.   ioVSeqNum: INTEGER;
  363.   ioVWrCnt: LONGINT;
  364.   ioVFilCnt: LONGINT;
  365.   ioVDirCnt: LONGINT;
  366.   ioVFndrInfo: ARRAY [1..8] OF LONGINT);
  367.    AccessParam:
  368.   (filler3: INTEGER;
  369.   ioDenyModes: INTEGER;                        {access rights data}
  370.   filler4: INTEGER;
  371.   filler5: SignedByte;
  372.   ioACUser: SignedByte;                        {access rights for directory only}
  373.   filler6: LONGINT;
  374.   ioACOwnerID: LONGINT;                        {owner ID}
  375.   ioACGroupID: LONGINT;                        {group ID}
  376.   ioACAccess: LONGINT);                        {access rights}
  377.    ObjParam:
  378.   (filler7: INTEGER;
  379.   ioObjType: INTEGER;                        {function code}
  380.   ioObjNamePtr: Ptr;                        {ptr to returned creator/group name}
  381.   ioObjID: LONGINT);                        {creator/group ID}
  382.    CopyParam:
  383.   (ioDstVRefNum: INTEGER;                    {destination vol identifier}
  384.   filler8: INTEGER;
  385.   ioNewName: Ptr;                            {ptr to destination pathname}
  386.   ioCopyName: Ptr;                            {ptr to optional name}
  387.   ioNewDirID: LONGINT);                        {destination directory ID}
  388.    WDParam:
  389.   (filler9: INTEGER;
  390.   ioWDIndex: INTEGER;
  391.   ioWDProcID: LONGINT;
  392.   ioWDVRefNum: INTEGER;
  393.   filler10: INTEGER;
  394.   filler11: LONGINT;
  395.   filler12: LONGINT;
  396.   filler13: LONGINT;
  397.   ioWDDirID: LONGINT);
  398.    FIDParam:
  399.   (filler14: LONGINT;
  400.   ioDestNamePtr: StringPtr;
  401.   filler15: LONGINT;
  402.   ioDestDirID: LONGINT;
  403.   filler16: LONGINT;
  404.   filler17: LONGINT;
  405.   ioSrcDirID: LONGINT;
  406.   filler18:  INTEGER;
  407.   ioFileID:  LONGINT);
  408.    CSParam:
  409.   (ioMatchPtr: FSSpecArrayPtr;                {match array}
  410.   ioReqMatchCount: LONGINT;                 {maximum allowable matches}
  411.   ioActMatchCount: LONGINT;                 {actual match count}
  412.   ioSearchBits: LONGINT;                       {search criteria selector}
  413.   ioSearchInfo1: CInfoPBPtr;                 {search values and range lower bounds}
  414.   ioSearchInfo2: CInfoPBPtr;                 {search values and range upper bounds}
  415.   ioSearchTime: LONGINT;                      {length of time to run the search}
  416.   ioCatPosition: CatPositionRec;             {current position in the catalog}
  417.   ioOptBuffer: Ptr;                           {optional performance enhancement buffer}
  418.   ioOptBufSize: LONGINT);                      {length of buffer pointed to by ioOptBuffer}
  419.    ForeignPrivParam:
  420.     (filler21: LONGINT;
  421.   filler22: LONGINT;
  422.   ioForeignPrivBuffer: Ptr;
  423.   ioForeignPrivReqCount: LONGINT;
  424.   ioForeignPrivActCount: LONGINT;
  425.   filler23: LONGINT;
  426.   ioForeignPrivDirID: LONGINT;
  427.   ioForeignPrivInfo1: LONGINT;
  428.   ioForeignPrivInfo2: LONGINT;
  429.   ioForeignPrivInfo3: LONGINT;
  430.   ioForeignPrivInfo4: LONGINT);
  431.  END;
  432.  
  433. CMovePBPtr = ^CMovePBRec;
  434. CMovePBRec = RECORD
  435.  qLink: QElemPtr;
  436.  qType: INTEGER;
  437.  ioTrap: INTEGER;
  438.  ioCmdAddr: Ptr;
  439.  ioCompletion: ProcPtr;
  440.  ioResult: OSErr;
  441.  ioNamePtr: StringPtr;
  442.  ioVRefNum: INTEGER;
  443.  filler1: LONGINT;
  444.  ioNewName: StringPtr;
  445.  filler2: LONGINT;
  446.  ioNewDirID: LONGINT;
  447.  filler3: ARRAY [1..2] OF LONGINT;
  448.  ioDirID: LONGINT;
  449.  END;
  450.  
  451. WDPBPtr = ^WDPBRec;
  452. WDPBRec = RECORD
  453.  qLink: QElemPtr;
  454.  qType: INTEGER;
  455.  ioTrap: INTEGER;
  456.  ioCmdAddr: Ptr;
  457.  ioCompletion: ProcPtr;
  458.  ioResult: OSErr;
  459.  ioNamePtr: StringPtr;
  460.  ioVRefNum: INTEGER;
  461.  filler1: INTEGER;
  462.  ioWDIndex: INTEGER;
  463.  ioWDProcID: LONGINT;
  464.  ioWDVRefNum: INTEGER;
  465.  filler2: ARRAY [1..7] OF INTEGER;
  466.  ioWDDirID: LONGINT;
  467.  END;
  468.  
  469. FCBPBPtr = ^FCBPBRec;
  470. FCBPBRec = RECORD
  471.  qLink: QElemPtr;
  472.  qType: INTEGER;
  473.  ioTrap: INTEGER;
  474.  ioCmdAddr: Ptr;
  475.  ioCompletion: ProcPtr;
  476.  ioResult: OSErr;
  477.  ioNamePtr: StringPtr;
  478.  ioVRefNum: INTEGER;
  479.  ioRefNum: INTEGER;
  480.  filler: INTEGER;
  481.  ioFCBIndx: INTEGER;
  482.  filler1: INTEGER;
  483.  ioFCBFlNm: LONGINT;
  484.  ioFCBFlags: INTEGER;
  485.  ioFCBStBlk: INTEGER;
  486.  ioFCBEOF: LONGINT;
  487.  ioFCBPLen: LONGINT;
  488.  ioFCBCrPs: LONGINT;
  489.  ioFCBVRefNum: INTEGER;
  490.  ioFCBClpSiz: LONGINT;
  491.  ioFCBParID: LONGINT;
  492.  END;
  493.  
  494. { Numeric version part of 'vers' resource }
  495. NumVersion = PACKED RECORD
  496.  CASE INTEGER OF
  497.    0:
  498.   (majorRev: SignedByte;                    {1st part of version number in BCD}
  499.   minorRev: 0..9;                            {2nd part is 1 nibble in BCD}
  500.   bugFixRev: 0..9;                            {3rd part is 1 nibble in BCD}
  501.   stage: SignedByte;                        {stage code: dev, alpha, beta, final}
  502.   nonRelRev: SignedByte);                    {revision level of non-released version}
  503.    1:
  504.   (version: LONGINT);                        {to use all 4 fields at one time}
  505.  END;
  506.  
  507. { 'vers' resource format }
  508. VersRecPtr = ^VersRec;
  509. VersRecHndl = ^VersRecPtr;
  510. VersRec = RECORD
  511.  numericVersion: NumVersion;                {encoded version number}
  512.  countryCode: INTEGER;                        {country code from intl utilities}
  513.  shortVersion: Str255;                        {version number string - worst case}
  514.  reserved: Str255;                            {longMessage string packed after shortVersion}
  515.  END;
  516.  
  517.  
  518. FUNCTION PBOpen(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  519. FUNCTION PBOpenSync(paramBlock: ParmBlkPtr): OSErr;
  520.  INLINE $205F,$A000,$3E80;
  521. FUNCTION PBOpenAsync(paramBlock: ParmBlkPtr): OSErr;
  522.  INLINE $205F,$A400,$3E80;
  523. FUNCTION PBClose(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  524. FUNCTION PBCloseSync(paramBlock: ParmBlkPtr): OSErr;
  525.  INLINE $205F,$A001,$3E80;
  526. FUNCTION PBCloseAsync(paramBlock: ParmBlkPtr): OSErr;
  527.  INLINE $205F,$A401,$3E80;
  528. FUNCTION PBRead(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  529. FUNCTION PBReadSync(paramBlock: ParmBlkPtr): OSErr;
  530.  INLINE $205F,$A002,$3E80;
  531. FUNCTION PBReadAsync(paramBlock: ParmBlkPtr): OSErr;
  532.  INLINE $205F,$A402,$3E80;
  533. FUNCTION PBWrite(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  534. FUNCTION PBWriteSync(paramBlock: ParmBlkPtr): OSErr;
  535.  INLINE $205F,$A003,$3E80;
  536. FUNCTION PBWriteAsync(paramBlock: ParmBlkPtr): OSErr;
  537.  INLINE $205F,$A403,$3E80;
  538. FUNCTION PBGetVInfo(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  539. FUNCTION PBGetVInfoSync(paramBlock: ParmBlkPtr): OSErr;
  540.  INLINE $205F,$A007,$3E80;
  541. FUNCTION PBGetVInfoAsync(paramBlock: ParmBlkPtr): OSErr;
  542.  INLINE $205F,$A407,$3E80;
  543. FUNCTION PBGetVol(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  544. FUNCTION PBGetVolSync(paramBlock: ParmBlkPtr): OSErr;
  545.  INLINE $205F,$A014,$3E80;
  546. FUNCTION PBGetVolAsync(paramBlock: ParmBlkPtr): OSErr;
  547.  INLINE $205F,$A414,$3E80;
  548. FUNCTION PBSetVol(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  549. FUNCTION PBSetVolSync(paramBlock: ParmBlkPtr): OSErr;
  550.  INLINE $205F,$A015,$3E80;
  551. FUNCTION PBSetVolAsync(paramBlock: ParmBlkPtr): OSErr;
  552.  INLINE $205F,$A415,$3E80;
  553. FUNCTION PBFlushVol(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  554. FUNCTION PBFlushVolSync(paramBlock: ParmBlkPtr): OSErr;
  555.  INLINE $205F,$A013,$3E80;
  556. FUNCTION PBFlushVolAsync(paramBlock: ParmBlkPtr): OSErr;
  557.  INLINE $205F,$A413,$3E80;
  558. FUNCTION PBCreate(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  559. FUNCTION PBCreateSync(paramBlock: ParmBlkPtr): OSErr;
  560.  INLINE $205F,$A008,$3E80;
  561. FUNCTION PBCreateAsync(paramBlock: ParmBlkPtr): OSErr;
  562.  INLINE $205F,$A408,$3E80;
  563. FUNCTION PBDelete(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  564. FUNCTION PBDeleteSync(paramBlock: ParmBlkPtr): OSErr;
  565.  INLINE $205F,$A009,$3E80;
  566. FUNCTION PBDeleteAsync(paramBlock: ParmBlkPtr): OSErr;
  567.  INLINE $205F,$A409,$3E80;
  568. FUNCTION PBOpenDF(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  569. FUNCTION PBOpenDFSync(paramBlock: ParmBlkPtr): OSErr;
  570.  INLINE $205F,$701A,$A060,$3E80;
  571. FUNCTION PBOpenDFAsync(paramBlock: ParmBlkPtr): OSErr;
  572.  INLINE $205F,$701A,$A460,$3E80;
  573. FUNCTION PBOpenRF(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  574. FUNCTION PBOpenRFSync(paramBlock: ParmBlkPtr): OSErr;
  575.  INLINE $205F,$A00A,$3E80;
  576. FUNCTION PBOpenRFAsync(paramBlock: ParmBlkPtr): OSErr;
  577.  INLINE $205F,$A40A,$3E80;
  578. FUNCTION PBRename(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  579. FUNCTION PBRenameSync(paramBlock: ParmBlkPtr): OSErr;
  580.  INLINE $205F,$A00B,$3E80;
  581. FUNCTION PBRenameAsync(paramBlock: ParmBlkPtr): OSErr;
  582.  INLINE $205F,$A40B,$3E80;
  583. FUNCTION PBGetFInfo(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  584. FUNCTION PBGetFInfoSync(paramBlock: ParmBlkPtr): OSErr;
  585.  INLINE $205F,$A00C,$3E80;
  586. FUNCTION PBGetFInfoAsync(paramBlock: ParmBlkPtr): OSErr;
  587.  INLINE $205F,$A40C,$3E80;
  588. FUNCTION PBSetFInfo(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  589. FUNCTION PBSetFInfoSync(paramBlock: ParmBlkPtr): OSErr;
  590.  INLINE $205F,$A00D,$3E80;
  591. FUNCTION PBSetFInfoAsync(paramBlock: ParmBlkPtr): OSErr;
  592.  INLINE $205F,$A40D,$3E80;
  593. FUNCTION PBSetFLock(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  594. FUNCTION PBSetFLockSync(paramBlock: ParmBlkPtr): OSErr;
  595.  INLINE $205F,$A041,$3E80;
  596. FUNCTION PBSetFLockAsync(paramBlock: ParmBlkPtr): OSErr;
  597.  INLINE $205F,$A441,$3E80;
  598. FUNCTION PBRstFLock(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  599. FUNCTION PBRstFLockSync(paramBlock: ParmBlkPtr): OSErr;
  600.  INLINE $205F,$A042,$3E80;
  601. FUNCTION PBRstFLockAsync(paramBlock: ParmBlkPtr): OSErr;
  602.  INLINE $205F,$A442,$3E80;
  603. FUNCTION PBSetFVers(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  604. FUNCTION PBSetFVersSync(paramBlock: ParmBlkPtr): OSErr;
  605.  INLINE $205F,$A043,$3E80;
  606. FUNCTION PBSetFVersAsync(paramBlock: ParmBlkPtr): OSErr;
  607.  INLINE $205F,$A443,$3E80;
  608. FUNCTION PBAllocate(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  609. FUNCTION PBAllocateSync(paramBlock: ParmBlkPtr): OSErr;
  610.  INLINE $205F,$A010,$3E80;
  611. FUNCTION PBAllocateAsync(paramBlock: ParmBlkPtr): OSErr;
  612.  INLINE $205F,$A410,$3E80;
  613. FUNCTION PBGetEOF(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  614. FUNCTION PBGetEOFSync(paramBlock: ParmBlkPtr): OSErr;
  615.  INLINE $205F,$A011,$3E80;
  616. FUNCTION PBGetEOFAsync(paramBlock: ParmBlkPtr): OSErr;
  617.  INLINE $205F,$A411,$3E80;
  618. FUNCTION PBSetEOF(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  619. FUNCTION PBSetEOFSync(paramBlock: ParmBlkPtr): OSErr;
  620.  INLINE $205F,$A012,$3E80;
  621. FUNCTION PBSetEOFAsync(paramBlock: ParmBlkPtr): OSErr;
  622.  INLINE $205F,$A412,$3E80;
  623. FUNCTION PBGetFPos(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  624. FUNCTION PBGetFPosSync(paramBlock: ParmBlkPtr): OSErr;
  625.  INLINE $205F,$A018,$3E80;
  626. FUNCTION PBGetFPosAsync(paramBlock: ParmBlkPtr): OSErr;
  627.  INLINE $205F,$A418,$3E80;
  628. FUNCTION PBSetFPos(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  629. FUNCTION PBSetFPosSync(paramBlock: ParmBlkPtr): OSErr;
  630.  INLINE $205F,$A044,$3E80;
  631. FUNCTION PBSetFPosAsync(paramBlock: ParmBlkPtr): OSErr;
  632.  INLINE $205F,$A444,$3E80;
  633. FUNCTION PBFlushFile(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  634. FUNCTION PBFlushFileSync(paramBlock: ParmBlkPtr): OSErr;
  635.  INLINE $205F,$A045,$3E80;
  636. FUNCTION PBFlushFileAsync(paramBlock: ParmBlkPtr): OSErr;
  637.  INLINE $205F,$A445,$3E80;
  638. FUNCTION PBMountVol(paramBlock: ParmBlkPtr): OSErr;
  639. FUNCTION PBUnmountVol(paramBlock: ParmBlkPtr): OSErr;
  640. FUNCTION PBEject(paramBlock: ParmBlkPtr): OSErr;
  641. FUNCTION PBOffLine(paramBlock: ParmBlkPtr): OSErr;
  642.  
  643. FUNCTION PBCatSearch(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  644. FUNCTION PBCatSearchSync(paramBlock: HParmBlkPtr): OSErr;
  645.  INLINE $205F,$7018,$A260,$3E80;
  646. FUNCTION PBCatSearchAsync(paramBlock: HParmBlkPtr): OSErr;
  647.  INLINE $205F,$7018,$A660,$3E80;
  648.  
  649. PROCEDURE AddDrive(drvrRefNum: INTEGER;drvNum: INTEGER;qEl: DrvQElPtr);
  650. FUNCTION FSOpen(fileName: Str255;vRefNum: INTEGER;VAR refNum: INTEGER): OSErr;
  651. FUNCTION OpenDF(fileName: Str255;vRefNum: INTEGER;VAR refNum: INTEGER): OSErr;
  652. FUNCTION FSClose(refNum: INTEGER): OSErr;
  653. FUNCTION FSRead(refNum: INTEGER;VAR count: LONGINT;buffPtr: Ptr): OSErr;
  654. FUNCTION FSWrite(refNum: INTEGER;VAR count: LONGINT;buffPtr: Ptr): OSErr;
  655. FUNCTION GetVInfo(drvNum: INTEGER;volName: StringPtr;VAR vRefNum: INTEGER;
  656.  VAR freeBytes: LONGINT): OSErr;
  657. FUNCTION GetFInfo(fileName: Str255;vRefNum: INTEGER;VAR fndrInfo: FInfo): OSErr;
  658. FUNCTION GetVol(volName: StringPtr;VAR vRefNum: INTEGER): OSErr;
  659. FUNCTION SetVol(volName: StringPtr;vRefNum: INTEGER): OSErr;
  660. FUNCTION UnmountVol(volName: StringPtr;vRefNum: INTEGER): OSErr;
  661. FUNCTION Eject(volName: StringPtr;vRefNum: INTEGER): OSErr;
  662. FUNCTION FlushVol(volName: StringPtr;vRefNum: INTEGER): OSErr;
  663. FUNCTION Create(fileName: Str255;vRefNum: INTEGER;creator: OSType;fileType: OSType): OSErr;
  664. FUNCTION FSDelete(fileName: Str255;vRefNum: INTEGER): OSErr;
  665. FUNCTION OpenRF(fileName: Str255;vRefNum: INTEGER;VAR refNum: INTEGER): OSErr;
  666. FUNCTION Rename(oldName: Str255;vRefNum: INTEGER;newName: Str255): OSErr;
  667. FUNCTION SetFInfo(fileName: Str255;vRefNum: INTEGER;fndrInfo: FInfo): OSErr;
  668. FUNCTION SetFLock(fileName: Str255;vRefNum: INTEGER): OSErr;
  669. FUNCTION RstFLock(fileName: Str255;vRefNum: INTEGER): OSErr;
  670. FUNCTION Allocate(refNum: INTEGER;VAR count: LONGINT): OSErr;
  671. FUNCTION GetEOF(refNum: INTEGER;VAR logEOF: LONGINT): OSErr;
  672. FUNCTION SetEOF(refNum: INTEGER;logEOF: LONGINT): OSErr;
  673. FUNCTION GetFPos(refNum: INTEGER;VAR filePos: LONGINT): OSErr;
  674. FUNCTION SetFPos(refNum: INTEGER;posMode: INTEGER;posOff: LONGINT): OSErr;
  675. FUNCTION GetVRefNum(fileRefNum: INTEGER;VAR vRefNum: INTEGER): OSErr;
  676.  
  677. FUNCTION PBOpenWD(paramBlock: WDPBPtr;async: BOOLEAN): OSErr;
  678. FUNCTION PBOpenWDSync(paramBlock: WDPBPtr): OSErr;
  679.  INLINE $205F,$7001,$A260,$3E80;
  680. FUNCTION PBOpenWDAsync(paramBlock: WDPBPtr): OSErr;
  681.  INLINE $205F,$7001,$A660,$3E80;
  682. FUNCTION PBCloseWD(paramBlock: WDPBPtr;async: BOOLEAN): OSErr;
  683. FUNCTION PBCloseWDSync(paramBlock: WDPBPtr): OSErr;
  684.  INLINE $205F,$7002,$A260,$3E80;
  685. FUNCTION PBCloseWDAsync(paramBlock: WDPBPtr): OSErr;
  686.  INLINE $205F,$7002,$A660,$3E80;
  687. FUNCTION PBHSetVol(paramBlock: WDPBPtr;async: BOOLEAN): OSErr;
  688. FUNCTION PBHSetVolSync(paramBlock: WDPBPtr): OSErr;
  689.  INLINE $205F,$A215,$3E80;
  690. FUNCTION PBHSetVolAsync(paramBlock: WDPBPtr): OSErr;
  691.  INLINE $205F,$A615,$3E80;
  692. FUNCTION PBHGetVol(paramBlock: WDPBPtr;async: BOOLEAN): OSErr;
  693. FUNCTION PBHGetVolSync(paramBlock: WDPBPtr): OSErr;
  694.  INLINE $205F,$A214,$3E80;
  695. FUNCTION PBHGetVolAsync(paramBlock: WDPBPtr): OSErr;
  696.  INLINE $205F,$A614,$3E80;
  697. FUNCTION PBCatMove(paramBlock: CMovePBPtr;async: BOOLEAN): OSErr;
  698. FUNCTION PBCatMoveSync(paramBlock: CMovePBPtr): OSErr;
  699.  INLINE $205F,$7005,$A260,$3E80;
  700. FUNCTION PBCatMoveAsync(paramBlock: CMovePBPtr): OSErr;
  701.  INLINE $205F,$7005,$A660,$3E80;
  702. FUNCTION PBDirCreate(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  703. FUNCTION PBDirCreateSync(paramBlock: HParmBlkPtr): OSErr;
  704.  INLINE $205F,$7006,$A260,$3E80;
  705. FUNCTION PBDirCreateAsync(paramBlock: HParmBlkPtr): OSErr;
  706.  INLINE $205F,$7006,$A660,$3E80;
  707. FUNCTION PBGetWDInfo(paramBlock: WDPBPtr;async: BOOLEAN): OSErr;
  708. FUNCTION PBGetWDInfoSync(paramBlock: WDPBPtr): OSErr;
  709.  INLINE $205F,$7007,$A260,$3E80;
  710. FUNCTION PBGetWDInfoAsync(paramBlock: WDPBPtr): OSErr;
  711.  INLINE $205F,$7007,$A660,$3E80;
  712. FUNCTION PBGetFCBInfo(paramBlock: FCBPBPtr;async: BOOLEAN): OSErr;
  713. FUNCTION PBGetFCBInfoSync(paramBlock: FCBPBPtr): OSErr;
  714.  INLINE $205F,$7008,$A260,$3E80;
  715. FUNCTION PBGetFCBInfoAsync(paramBlock: FCBPBPtr): OSErr;
  716.  INLINE $205F,$7008,$A660,$3E80;
  717. FUNCTION PBGetCatInfo(paramBlock: CInfoPBPtr;async: BOOLEAN): OSErr;
  718. FUNCTION PBGetCatInfoSync(paramBlock: CInfoPBPtr): OSErr;
  719.  INLINE $205F,$7009,$A260,$3E80;
  720. FUNCTION PBGetCatInfoAsync(paramBlock: CInfoPBPtr): OSErr;
  721.  INLINE $205F,$7009,$A660,$3E80;
  722. FUNCTION PBSetCatInfo(paramBlock: CInfoPBPtr;async: BOOLEAN): OSErr;
  723. FUNCTION PBSetCatInfoSync(paramBlock: CInfoPBPtr): OSErr;
  724.  INLINE $205F,$700A,$A260,$3E80;
  725. FUNCTION PBSetCatInfoAsync(paramBlock: CInfoPBPtr): OSErr;
  726.  INLINE $205F,$700A,$A660,$3E80;
  727.  
  728. FUNCTION PBAllocContig(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  729. FUNCTION PBAllocContigSync(paramBlock: ParmBlkPtr): OSErr;
  730.  INLINE $205F,$A210,$3E80;
  731. FUNCTION PBAllocContigAsync(paramBlock: ParmBlkPtr): OSErr;
  732.  INLINE $205F,$A610,$3E80;
  733. FUNCTION PBLockRange(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  734. FUNCTION PBLockRangeSync(paramBlock: ParmBlkPtr): OSErr;
  735.  INLINE $205F,$7010,$A260,$3E80;
  736. FUNCTION PBLockRangeAsync(paramBlock: ParmBlkPtr): OSErr;
  737.  INLINE $205F,$7010,$A660,$3E80;
  738. FUNCTION PBUnlockRange(paramBlock: ParmBlkPtr;async: BOOLEAN): OSErr;
  739. FUNCTION PBUnlockRangeSync(paramBlock: ParmBlkPtr): OSErr;
  740.  INLINE $205F,$7011,$A260,$3E80;
  741. FUNCTION PBUnlockRangeAsync(paramBlock: ParmBlkPtr): OSErr;
  742.  INLINE $205F,$7011,$A660,$3E80;
  743. FUNCTION PBSetVInfo(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  744. FUNCTION PBSetVInfoSync(paramBlock: HParmBlkPtr): OSErr;
  745.  INLINE $205F,$700B,$A260,$3E80;
  746. FUNCTION PBSetVInfoAsync(paramBlock: HParmBlkPtr): OSErr;
  747.  INLINE $205F,$700B,$A660,$3E80;
  748. FUNCTION PBHGetVInfo(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  749. FUNCTION PBHGetVInfoSync(paramBlock: HParmBlkPtr): OSErr;
  750.  INLINE $205F,$A207,$3E80;
  751. FUNCTION PBHGetVInfoAsync(paramBlock: HParmBlkPtr): OSErr;
  752.  INLINE $205F,$A607,$3E80;
  753. FUNCTION PBHOpen(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  754. FUNCTION PBHOpenSync(paramBlock: HParmBlkPtr): OSErr;
  755.  INLINE $205F,$A200,$3E80;
  756. FUNCTION PBHOpenAsync(paramBlock: HParmBlkPtr): OSErr;
  757.  INLINE $205F,$A600,$3E80;
  758. FUNCTION PBHOpenRF(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  759. FUNCTION PBHOpenRFSync(paramBlock: HParmBlkPtr): OSErr;
  760.  INLINE $205F,$A20A,$3E80;
  761. FUNCTION PBHOpenRFAsync(paramBlock: HParmBlkPtr): OSErr;
  762.  INLINE $205F,$A60A,$3E80;
  763. FUNCTION PBHOpenDF(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  764. FUNCTION PBHOpenDFSync(paramBlock: HParmBlkPtr): OSErr;
  765.  INLINE $205F,$701A,$A260,$3E80;
  766. FUNCTION PBHOpenDFAsync(paramBlock: HParmBlkPtr): OSErr;
  767.  INLINE $205F,$701A,$A660,$3E80;
  768.  
  769. FUNCTION PBHCreate(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  770. FUNCTION PBHCreateSync(paramBlock: HParmBlkPtr): OSErr;
  771.  INLINE $205F,$A208,$3E80;
  772. FUNCTION PBHCreateAsync(paramBlock: HParmBlkPtr): OSErr;
  773.  INLINE $205F,$A608,$3E80;
  774. FUNCTION PBHDelete(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  775. FUNCTION PBHDeleteSync(paramBlock: HParmBlkPtr): OSErr;
  776.  INLINE $205F,$A209,$3E80;
  777. FUNCTION PBHDeleteAsync(paramBlock: HParmBlkPtr): OSErr;
  778.  INLINE $205F,$A609,$3E80;
  779. FUNCTION PBHRename(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  780. FUNCTION PBHRenameSync(paramBlock: HParmBlkPtr): OSErr;
  781.  INLINE $205F,$A20B,$3E80;
  782. FUNCTION PBHRenameAsync(paramBlock: HParmBlkPtr): OSErr;
  783.  INLINE $205F,$A60B,$3E80;
  784. FUNCTION PBHRstFLock(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  785. FUNCTION PBHRstFLockSync(paramBlock: HParmBlkPtr): OSErr;
  786.  INLINE $205F,$A242,$3E80;
  787. FUNCTION PBHRstFLockAsync(paramBlock: HParmBlkPtr): OSErr;
  788.  INLINE $205F,$A642,$3E80;
  789. FUNCTION PBHSetFLock(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  790. FUNCTION PBHSetFLockSync(paramBlock: HParmBlkPtr): OSErr;
  791.  INLINE $205F,$A241,$3E80;
  792. FUNCTION PBHSetFLockAsync(paramBlock: HParmBlkPtr): OSErr;
  793.  INLINE $205F,$A641,$3E80;
  794. FUNCTION PBHGetFInfo(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  795. FUNCTION PBHGetFInfoSync(paramBlock: HParmBlkPtr): OSErr;
  796.  INLINE $205F,$A20C,$3E80;
  797. FUNCTION PBHGetFInfoAsync(paramBlock: HParmBlkPtr): OSErr;
  798.  INLINE $205F,$A60C,$3E80;
  799. FUNCTION PBHSetFInfo(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  800. FUNCTION PBHSetFInfoSync(paramBlock: HParmBlkPtr): OSErr;
  801.  INLINE $205F,$A20D,$3E80;
  802. FUNCTION PBHSetFInfoAsync(paramBlock: HParmBlkPtr): OSErr;
  803.  INLINE $205F,$A60D,$3E80;
  804.  
  805. FUNCTION PBMakeFSSpec(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  806. FUNCTION PBMakeFSSpecSync(paramBlock: HParmBlkPtr): OSErr;
  807.  INLINE $205F,$701B,$A260,$3E80;
  808. FUNCTION PBMakeFSSpecAsync(paramBlock: HParmBlkPtr): OSErr;
  809.  INLINE $205F,$701B,$A660,$3E80;
  810.  
  811. PROCEDURE FInitQueue;
  812.  INLINE $A016;
  813. FUNCTION GetFSQHdr: QHdrPtr;
  814.  INLINE $2EBC,$0000,$0360;
  815. FUNCTION GetDrvQHdr: QHdrPtr;
  816.  INLINE $2EBC,$0000,$0308;
  817. FUNCTION GetVCBQHdr: QHdrPtr;
  818.  INLINE $2EBC,$0000,$0356;
  819. FUNCTION HGetVol(volName: StringPtr;VAR vRefNum: INTEGER;VAR dirID: LONGINT): OSErr;
  820. FUNCTION HSetVol(volName: StringPtr;vRefNum: INTEGER;dirID: LONGINT): OSErr;
  821. FUNCTION HOpen(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255;permission: SignedByte;
  822.  VAR refNum: INTEGER): OSErr;
  823. FUNCTION HOpenDF(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255;permission: SignedByte;
  824.  VAR refNum: INTEGER): OSErr;
  825. FUNCTION HOpenRF(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255;permission: SignedByte;
  826.  VAR refNum: INTEGER): OSErr;
  827. FUNCTION AllocContig(refNum: INTEGER;VAR count: LONGINT): OSErr;
  828. FUNCTION HCreate(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255;creator: OSType;
  829.  fileType: OSType): OSErr;
  830. FUNCTION DirCreate(vRefNum: INTEGER;parentDirID: LONGINT;directoryName: Str255;
  831.  VAR createdDirID: LONGINT): OSErr;
  832. FUNCTION HDelete(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255): OSErr;
  833. FUNCTION HGetFInfo(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255;VAR fndrInfo: FInfo): OSErr;
  834. FUNCTION HSetFInfo(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255;fndrInfo: FInfo): OSErr;
  835. FUNCTION HSetFLock(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255): OSErr;
  836. FUNCTION HRstFLock(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255): OSErr;
  837. FUNCTION HRename(vRefNum: INTEGER;dirID: LONGINT;oldName: Str255;newName: Str255): OSErr;
  838. FUNCTION CatMove(vRefNum: INTEGER;dirID: LONGINT;oldName: Str255;newDirID: LONGINT;
  839.  newName: Str255): OSErr;
  840. FUNCTION OpenWD(vRefNum: INTEGER;dirID: LONGINT;procID: LONGINT;VAR wdRefNum: INTEGER): OSErr;
  841. FUNCTION CloseWD(wdRefNum: INTEGER): OSErr;
  842. FUNCTION GetWDInfo(wdRefNum: INTEGER;VAR vRefNum: INTEGER;VAR dirID: LONGINT;
  843.  VAR procID: LONGINT): OSErr;
  844.  
  845. {  shared environment  }
  846. FUNCTION PBHGetVolParms(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  847. FUNCTION PBHGetVolParmsSync(paramBlock: HParmBlkPtr): OSErr;
  848.  INLINE $205F,$7030,$A260,$3E80;
  849. FUNCTION PBHGetVolParmsAsync(paramBlock: HParmBlkPtr): OSErr;
  850.  INLINE $205F,$7030,$A660,$3E80;
  851. FUNCTION PBHGetLogInInfo(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  852. FUNCTION PBHGetLogInInfoSync(paramBlock: HParmBlkPtr): OSErr;
  853.  INLINE $205F,$7031,$A260,$3E80;
  854. FUNCTION PBHGetLogInInfoAsync(paramBlock: HParmBlkPtr): OSErr;
  855.  INLINE $205F,$7031,$A660,$3E80;
  856. FUNCTION PBHGetDirAccess(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  857. FUNCTION PBHGetDirAccessSync(paramBlock: HParmBlkPtr): OSErr;
  858.  INLINE $205F,$7032,$A260,$3E80;
  859. FUNCTION PBHGetDirAccessAsync(paramBlock: HParmBlkPtr): OSErr;
  860.  INLINE $205F,$7032,$A660,$3E80;
  861. FUNCTION PBHSetDirAccess(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  862. FUNCTION PBHSetDirAccessSync(paramBlock: HParmBlkPtr): OSErr;
  863.  INLINE $205F,$7033,$A260,$3E80;
  864. FUNCTION PBHSetDirAccessAsync(paramBlock: HParmBlkPtr): OSErr;
  865.  INLINE $205F,$7033,$A660,$3E80;
  866. FUNCTION PBHMapID(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  867. FUNCTION PBHMapIDSync(paramBlock: HParmBlkPtr): OSErr;
  868.  INLINE $205F,$7034,$A260,$3E80;
  869. FUNCTION PBHMapIDAsync(paramBlock: HParmBlkPtr): OSErr;
  870.  INLINE $205F,$7034,$A660,$3E80;
  871. FUNCTION PBHMapName(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  872. FUNCTION PBHMapNameSync(paramBlock: HParmBlkPtr): OSErr;
  873.  INLINE $205F,$7035,$A260,$3E80;
  874. FUNCTION PBHMapNameAsync(paramBlock: HParmBlkPtr): OSErr;
  875.  INLINE $205F,$7035,$A660,$3E80;
  876. FUNCTION PBHCopyFile(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  877. FUNCTION PBHCopyFileSync(paramBlock: HParmBlkPtr): OSErr;
  878.  INLINE $205F,$7036,$A260,$3E80;
  879. FUNCTION PBHCopyFileAsync(paramBlock: HParmBlkPtr): OSErr;
  880.  INLINE $205F,$7036,$A660,$3E80;
  881. FUNCTION PBHMoveRename(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  882. FUNCTION PBHMoveRenameSync(paramBlock: HParmBlkPtr): OSErr;
  883.  INLINE $205F,$7037,$A260,$3E80;
  884. FUNCTION PBHMoveRenameAsync(paramBlock: HParmBlkPtr): OSErr;
  885.  INLINE $205F,$7037,$A660,$3E80;
  886. FUNCTION PBHOpenDeny(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  887. FUNCTION PBHOpenDenySync(paramBlock: HParmBlkPtr): OSErr;
  888.  INLINE $205F,$7038,$A260,$3E80;
  889. FUNCTION PBHOpenDenyAsync(paramBlock: HParmBlkPtr): OSErr;
  890.  INLINE $205F,$7038,$A660,$3E80;
  891. FUNCTION PBHOpenRFDeny(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  892. FUNCTION PBHOpenRFDenySync(paramBlock: HParmBlkPtr): OSErr;
  893.  INLINE $205F,$7039,$A260,$3E80;
  894. FUNCTION PBHOpenRFDenyAsync(paramBlock: HParmBlkPtr): OSErr;
  895.  INLINE $205F,$7039,$A660,$3E80;
  896.  
  897. FUNCTION PBExchangeFiles(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  898. FUNCTION PBExchangeFilesSync(paramBlock: HParmBlkPtr): OSErr;
  899.  INLINE $205F,$7017,$A260,$3E80;
  900. FUNCTION PBExchangeFilesAsync(paramBlock: HParmBlkPtr): OSErr;
  901.  INLINE $205F,$7017,$A660,$3E80;
  902. FUNCTION PBCreateFileIDRef(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  903. FUNCTION PBCreateFileIDRefSync(paramBlock: HParmBlkPtr): OSErr;
  904.  INLINE $205F,$7014,$A260,$3E80;
  905. FUNCTION PBCreateFileIDRefAsync(paramBlock: HParmBlkPtr): OSErr;
  906.  INLINE $205F,$7014,$A660,$3E80;
  907. FUNCTION PBResolveFileIDRef(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  908. FUNCTION PBResolveFileIDRefSync(paramBlock: HParmBlkPtr): OSErr;
  909.  INLINE $205F,$7016,$A260,$3E80;
  910. FUNCTION PBResolveFileIDRefAsync(paramBlock: HParmBlkPtr): OSErr;
  911.  INLINE $205F,$7016,$A660,$3E80;
  912. FUNCTION PBDeleteFileIDRef(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  913. FUNCTION PBDeleteFileIDRefSync(paramBlock: HParmBlkPtr): OSErr;
  914.  INLINE $205F,$7015,$A260,$3E80;
  915. FUNCTION PBDeleteFileIDRefAsync(paramBlock: HParmBlkPtr): OSErr;
  916.  INLINE $205F,$7015,$A660,$3E80;
  917.  
  918. FUNCTION PBGetForeignPrivs(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  919. FUNCTION PBGetForeignPrivsSync(paramBlock: HParmBlkPtr): OSErr;
  920.  INLINE $205F,$7060,$A260,$3E80;
  921. FUNCTION PBGetForeignPrivsAsync(paramBlock: HParmBlkPtr): OSErr;
  922.  INLINE $205F,$7060,$A660,$3E80;
  923. FUNCTION PBSetForeignPrivs(paramBlock: HParmBlkPtr;async: BOOLEAN): OSErr;
  924. FUNCTION PBSetForeignPrivsSync(paramBlock: HParmBlkPtr): OSErr;
  925.  INLINE $205F,$7061,$A260,$3E80;
  926. FUNCTION PBSetForeignPrivsAsync(paramBlock: HParmBlkPtr): OSErr;
  927.  INLINE $205F,$7061,$A660,$3E80;
  928.  
  929. {  Desktop Manager  }
  930. FUNCTION PBDTGetPath(paramBlock: DTPBPtr): OSErr;
  931.  INLINE $205F,$7020,$A260,$3E80;
  932. FUNCTION PBDTCloseDown(paramBlock: DTPBPtr): OSErr;
  933.  INLINE $205F,$7021,$A260,$3E80;
  934. FUNCTION PBDTAddIcon(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  935. FUNCTION PBDTAddIconSync(paramBlock: DTPBPtr): OSErr;
  936.  INLINE $205F,$7022,$A260,$3E80;
  937. FUNCTION PBDTAddIconAsync(paramBlock: DTPBPtr): OSErr;
  938.  INLINE $205F,$7022,$A660,$3E80;
  939. FUNCTION PBDTGetIcon(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  940. FUNCTION PBDTGetIconSync(paramBlock: DTPBPtr): OSErr;
  941.  INLINE $205F,$7023,$A260,$3E80;
  942. FUNCTION PBDTGetIconAsync(paramBlock: DTPBPtr): OSErr;
  943.  INLINE $205F,$7023,$A660,$3E80;
  944. FUNCTION PBDTGetIconInfo(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  945. FUNCTION PBDTGetIconInfoSync(paramBlock: DTPBPtr): OSErr;
  946.  INLINE $205F,$7024,$A260,$3E80;
  947. FUNCTION PBDTGetIconInfoAsync(paramBlock: DTPBPtr): OSErr;
  948.  INLINE $205F,$7024,$A660,$3E80;
  949. FUNCTION PBDTAddAPPL(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  950. FUNCTION PBDTAddAPPLSync(paramBlock: DTPBPtr): OSErr;
  951.  INLINE $205F,$7025,$A260,$3E80;
  952. FUNCTION PBDTAddAPPLAsync(paramBlock: DTPBPtr): OSErr;
  953.  INLINE $205F,$7025,$A660,$3E80;
  954. FUNCTION PBDTRemoveAPPL(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  955. FUNCTION PBDTRemoveAPPLSync(paramBlock: DTPBPtr): OSErr;
  956.  INLINE $205F,$7026,$A260,$3E80;
  957. FUNCTION PBDTRemoveAPPLAsync(paramBlock: DTPBPtr): OSErr;
  958.  INLINE $205F,$7026,$A660,$3E80;
  959. FUNCTION PBDTGetAPPL(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  960. FUNCTION PBDTGetAPPLSync(paramBlock: DTPBPtr): OSErr;
  961.  INLINE $205F,$7027,$A260,$3E80;
  962. FUNCTION PBDTGetAPPLAsync(paramBlock: DTPBPtr): OSErr;
  963.  INLINE $205F,$7027,$A660,$3E80;
  964. FUNCTION PBDTSetComment(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  965. FUNCTION PBDTSetCommentSync(paramBlock: DTPBPtr): OSErr;
  966.  INLINE $205F,$7028,$A260,$3E80;
  967. FUNCTION PBDTSetCommentAsync(paramBlock: DTPBPtr): OSErr;
  968.  INLINE $205F,$7028,$A660,$3E80;
  969. FUNCTION PBDTRemoveComment(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  970. FUNCTION PBDTRemoveCommentSync(paramBlock: DTPBPtr): OSErr;
  971.  INLINE $205F,$7029,$A260,$3E80;
  972. FUNCTION PBDTRemoveCommentAsync(paramBlock: DTPBPtr): OSErr;
  973.  INLINE $205F,$7029,$A660,$3E80;
  974. FUNCTION PBDTGetComment(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  975. FUNCTION PBDTGetCommentSync(paramBlock: DTPBPtr): OSErr;
  976.  INLINE $205F,$702A,$A260,$3E80;
  977. FUNCTION PBDTGetCommentAsync(paramBlock: DTPBPtr): OSErr;
  978.  INLINE $205F,$702A,$A660,$3E80;
  979. FUNCTION PBDTFlush(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  980. FUNCTION PBDTFlushSync(paramBlock: DTPBPtr): OSErr;
  981.  INLINE $205F,$702B,$A260,$3E80;
  982. FUNCTION PBDTFlushAsync(paramBlock: DTPBPtr): OSErr;
  983.  INLINE $205F,$702B,$A660,$3E80;
  984. FUNCTION PBDTReset(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  985. FUNCTION PBDTResetSync(paramBlock: DTPBPtr): OSErr;
  986.  INLINE $205F,$702C,$A260,$3E80;
  987. FUNCTION PBDTResetAsync(paramBlock: DTPBPtr): OSErr;
  988.  INLINE $205F,$702C,$A660,$3E80;
  989. FUNCTION PBDTGetInfo(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  990. FUNCTION PBDTGetInfoSync(paramBlock: DTPBPtr): OSErr;
  991.  INLINE $205F,$702D,$A260,$3E80;
  992. FUNCTION PBDTGetInfoAsync(paramBlock: DTPBPtr): OSErr;
  993.  INLINE $205F,$702D,$A660,$3E80;
  994. FUNCTION PBDTOpenInform(paramBlock: DTPBPtr): OSErr;
  995.  INLINE $205F,$702E,$A060,$3E80;
  996. FUNCTION PBDTDelete(paramBlock: DTPBPtr;async: BOOLEAN): OSErr;
  997. FUNCTION PBDTDeleteSync(paramBlock: DTPBPtr): OSErr;
  998.  INLINE $205F,$702F,$A060,$3E80;
  999. FUNCTION PBDTDeleteAsync(paramBlock: DTPBPtr): OSErr;
  1000.  INLINE $205F,$702F,$A460,$3E80;
  1001.  
  1002. {  VolumeMount traps  }
  1003. FUNCTION PBGetVolMountInfoSize(paramBlock: ParmBlkPtr): OSErr;
  1004.  INLINE $205F,$703F,$A260,$3E80;
  1005. FUNCTION PBGetVolMountInfo(paramBlock: ParmBlkPtr): OSErr;
  1006.  INLINE $205F,$7040,$A260,$3E80;
  1007. FUNCTION PBVolumeMount(paramBlock: ParmBlkPtr): OSErr;
  1008.  INLINE $205F,$7041,$A260,$3E80;
  1009.  
  1010. {  FSp traps  }
  1011. FUNCTION FSMakeFSSpec(vRefNum: INTEGER;dirID: LONGINT;fileName: Str255;
  1012.  VAR spec: FSSpec): OSErr;
  1013.  INLINE $303C, $0001, $AA52;
  1014. FUNCTION FSpOpenDF(spec: FSSpec;permission: SignedByte;VAR refNum: INTEGER): OSErr;
  1015.  INLINE $303C, $0002, $AA52;
  1016. FUNCTION FSpOpenRF(spec: FSSpec ;permission: SignedByte;VAR refNum: INTEGER): OSErr;
  1017.  INLINE $303C, $0003, $AA52;
  1018. FUNCTION FSpCreate(spec: FSSpec ;creator: OSType;fileType: OSType;scriptTag: ScriptCode): OSErr;
  1019.  INLINE $303C, $0004, $AA52;
  1020. FUNCTION FSpDirCreate(spec: FSSpec;scriptTag: ScriptCode;VAR createdDirID: LONGINT): OSErr;
  1021.  INLINE $303C, $0005, $AA52;
  1022. FUNCTION FSpDelete(spec: FSSpec): OSErr;
  1023.  INLINE $303C, $0006, $AA52;
  1024. FUNCTION FSpGetFInfo(spec: FSSpec;VAR fndrInfo: FInfo): OSErr;
  1025.  INLINE $303C, $0007, $AA52;
  1026. FUNCTION FSpSetFInfo(spec: FSSpec;fndrInfo: FInfo): OSErr;
  1027.  INLINE $303C, $0008, $AA52;
  1028. FUNCTION FSpSetFLock(spec: FSSpec): OSErr;
  1029.  INLINE $303C, $0009, $AA52;
  1030. FUNCTION FSpRstFLock(spec: FSSpec): OSErr;
  1031.  INLINE $303C, $000A, $AA52;
  1032. FUNCTION FSpRename(spec: FSSpec;newName: Str255): OSErr;
  1033.  INLINE $303C, $000B, $AA52;
  1034. FUNCTION FSpCatMove(source: FSSpec;dest: FSSpec): OSErr;
  1035.  INLINE $303C, $000C, $AA52;
  1036. FUNCTION FSpExchangeFiles(source: FSSpec;dest: FSSpec): OSErr;
  1037.  INLINE $303C, $000F, $AA52;
  1038.  
  1039.  
  1040. {$ENDC} { UsingFiles }
  1041.  
  1042. {$IFC NOT UsingIncludes}
  1043.  END.
  1044. {$ENDC}
  1045.  
  1046.